package com.ywgt.system.service;

import com.github.pagehelper.Page;
import com.ywgt.system.pojo.AuthUser;
import com.ywgt.system.pojo.OutStock;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ywgt.system.vo.OutStockVO;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author yiping
 * @since 2021-01-22
 */
public interface OutStockService extends IService<OutStock> {
    /**
     * 根据consumerid 添加出库订单
     * @param outStockVO 出库对象
     * @param authUser 操作人员信息
     * @param consumerId 消费者id
     * @return 返回true则成功 反之失败
     */
    boolean consumerInsert(OutStockVO outStockVO, AuthUser authUser, Long consumerId);

    /**
     * 添加新的出库订单和收货方
     * @param outStockVO 出库对象
     * @param authUser 操作人员信息
     * @return 返回true则成功 反之失败
     */
    boolean newInsert(OutStockVO outStockVO,AuthUser authUser);

    /**
     * 根据id查询出库单细节
     * @param id 出库单id
     * @return 返回出库单对象
     */
    OutStock detail(Long id);

    /**
     * 根据构件的条件进行查询
     * @param pageNum 页码
     * @param pageSize 每页显示数量
     * @param outStockVO 构件的查询对象
     * @return 返回的分页对象
     */
    Page<OutStockVO> findOutStockList(Integer pageNum, Integer pageSize, OutStockVO outStockVO);
}
